#ifndef COMMON_H
#define COMMON_H

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <signal.h>
#include <pthread.h>
#include <stdint.h>
#include <errno.h>

// 公共配置
#define BUFFER_SIZE (1024 * 1024)  // 1MB缓冲区
#define SHARED_MEM_SIZE 4          // 共享内存大小（存储进度）
#define TCP_PORT 8888              // 传输端口

// 进度显示工具
static inline void print_progress(double progress) {
    printf("\r进度: %.2f%%", progress);
    fflush(stdout);
}

// 声明公共函数
off_t get_file_size(const char* filename);  // 获取文件大小

#endif
